import Vue from 'vue'
import VueRouter from 'vue-router'

import Home from '../pages/Home'
import About from '../pages/About'
import Detail from '../pages/Detail'
import Login from '../pages/Login'


// 二级路由
import Homes from '../pages/home/Homes'
import Recommend from '../pages/home/Recommend'
import Apps from '../pages/home/Apps'
import My from '../pages/home/My'

// 路由表
// let routes = [
//     // 匹配当前页面的信息
//     {
//         path: "/",
//         // 重定向
//         redirect: "/home"
//     },
//     {
//         // 匹配的是浏览器url地址
//         path: "/home",
//         // 匹配到url后要渲染的组件
//         component: Home
//     },
//     {
//         // 匹配的是浏览器url地址
//         path: "/about",
//         // 匹配到url后要渲染的组件
//         component: About
//     },
//     {
//         // 匹配的是浏览器url地址
//         path: "/detail",
//         // 匹配到url后要渲染的组件
//         component: Detail
//     },
//     {
//         // 匹配的是浏览器url地址
//         path: "/login",
//         // 匹配到url后要渲染的组件
//         component: Login
//     }
// ]


let routes = [
    {
        path: "/",
        redirect: "/home"
    },
    {
        path: "/home",
        component: Home,
        // 子集路由
        children: [
            // 二级路由重定向
            {
                path: "/home",
                redirect: "/home/homes"
            },
            {
                path: "/home/homes",
                component: Homes,
            },
            {
                path: "/home/recommend",
                component: Recommend
            },
            {
                path: "/home/apps",
                component: Apps
            },
            {
                path: "/home/my",
                component: My
            }
        ]
    },
    {
        path: "/detail",
        component: Detail
    },
    {
        path: "/login",
        component: Login
    }
]

let router = new VueRouter({
    // 路由表
    routes,
    // 路由模式 (hash 后面有#)
    // 路由模式 (history  后面没有#)
    mode: "history"
})

// console.log(router)

// 路由拦截
// 进入页面之前拦截
// router.beforeEach((to, from, next) => {
//     // to  去往页面的信息
//     // from  从哪里来的信息
//     // next  调用next()让页面渲染

//     // ？
//     // router.push('/login')

//     // next()  直接切换到下一个页面
//     // next(url)   跳转到指定页面
//     // next(布尔值)  如果为true跳转到写一个页面， false不跳转
//     if (to.path === "/home/my" && !sessionStorage.getItem('token')) {
//         next("/login")
//     } else {
//         next()
//     }
// })

// 进入页面之后拦截
// router.afterEach((to, from) => {
//     alert('我进入页面了')
// })

// 只要在vue中使用第三方参加都需要ues
Vue.use(VueRouter)

export default router
